EBAS-88: R


PASS: P

	EBAS-88		26.1.84
LOC	CODE	LINE	SOURCE

		00001		PN	MON
		00002
		00003 	;******************************
		00004	;* MONITORPROGRAMM            *
		00005 	;*                            *
		00006	;* V2.1 20.12.83              *
		00007 	;* ROM-TEIL                   *
		00008 	;******************************
		00009
		00010
		00011		ORG	0F000H
		00012
		00013	;SPRUNGTABELLE:
		00014
F000 C326F0	00015 	START: 	JMP	BEGIN
F003 C3CBFF	00016		JMP	CI		;TASTATUR
F006 C3C5FF	00017		JMP	RI		;LOCHBANDLESER
F009 C3C1FF	00018		JMP	COE		;BILDSCHIRM
F00C C3B9FF	00019		JMP	POE		;LOCHBANDSTANZER

F00F C3B5FF	00020		JMP	LOE		;DRUCKER
F012 C3C2FA	00021		JMP	CSTS		;KONSOLSTATUS
F015 C3C8FF	00022		JMP	CRI		;CASSETTENEINGABE
F018 C3BDFF	00023		JMP	CPOE		;CASSETTENAUSGABE
F010 C32AFA	00024		JMP	MEMSI		;SPEICHERBEREICH
F01E C36CF0	00025 	RSTAR: 	JMP	MAIN		;RESTART MONITOR
F021 C34EFA	00026		JMP	EXT		;MONITOR FUNKTIONEN
F024 00FF	00027		DA	FINA		;FUER EXTERN
		00028
		00029
F026 31FEFE	00030 	BEGIN:	LD	SP,STACK
F029 2189FB	00031		LD	HL,ATAB		;GERAETEZUWEISUNG
F02C 11B1FF	00032		LD	DE,MSIZE	;INITIALISIEREN
F022 012300	00033		LD	BC,35		;SPRUNGTABELLE INS RAM LADEN
F032 EDB0	00034		LDIR
F034 CD74F1	00035		CALL	PRINT		;MELDUNG AUSGEBEN
F037 0C		00036		DB	CLS
F038		00037		DB	' H.MON V2.1 12/83'
F049 1E		00038		DB	NL
F04A 00		00039		DB	0
F04B CD61FA	00040		CALL	CINIT		;KASSETTENPORT INIT
F04E CD7BFA	00041		CALL	RINIT		;LESERPORT INIT
F051 CD32FA	00042		CALL	MEMCH		;RAMTEST
F054 22B1FF	00043		LD	(MSIZE),HL
F057 1813	00044		JR	MAIN-#
		00045
		00046
		00047 	;******************************
		00048 	;* MAIN                       *
		00049 	;******************************

		00050
F059 CD74F1	00051	ERROR:	CALL	PRINT
F05C 		00052		DB	'ILLEGAL COMMAND'
F06B 00		00053		DB	0
		00054
		00055 	;BEFEHLSZEILE EINGEBEN UND PROGRAMM ANSPRINGEN
		00056
F06C 31FEFE	00057 	MAIN: 	LD	SP,STACK	;NEU LADEN
F06F CD81F1	00058		CALL 	INL		;EINGABE BEFEHLSZEILE
F072 CD55F1	00059		CALL 	FNEXT		;SPACE AUSBLENDEN
F075 38F5	00060		JRC 	MAIN-#		;NUR BEI CR
F077 ED5340FF 	00061		LD	(TXTPT),DE
F07B 2100E0	00062		LD	HL,START-1000H	;SUCHBEGINN
F07E 01FFFF	00063		LD	BC,0FFFFH	;64K DURCHSUCHEN
F081 3EED	00064	MAIN1: 	LD	A,L(HEAD)
F083 EDB1	00065		CPIR			;NACH ED SUCHEN
F085 20D2	00066		JRNZ 	ERROR-#		;FEHLER
F087 3EFF	00067		LD	A,H(HEAD)	;FOLGT FF?
F089 BE		00068		CMP 	(HL)
F08A 20F5	00069		JRNZ 	MAIN1-#		;NEIN
F08C ED5B40FF 	00070		LD	DE,(TXTPT)
F090 1A		00071 	MAIN2: 	LD	A,(DE)		;VERGLEICHEN
F091 23		00072		INC 	HL
F092 13		00073		INC 	DE
F093 0B		00074		DEC 	BC
F094 BE		00075		CMP 	(HL)
F095 28F9	00076		JRZ 	MAIN2-#		;GLEICH
F097 FE20	00077		CMP 	' '		;TEST TRENNZEICHEN/CR
F099 2808	00078		JRZ 	MAIN3-#
F09B FE2C	00079		CMP 	','

F09D 2804	00080		JRZ 	MAIN3-#
F09F FE0D	00081		CMP 	CR
F0A1 20DE	00082		JRNZ 	MAIN1-#		;WEITERSUCHEN
		00083 	;EVT.DOCH KEIN BEFEHL?
F0A3 AF		00084 	MAIN3: 	XOR 	A		;TEST RAHMEN
F0A4 2B		00085		DEC 	HL
F0A5 C5		00086		PUSH 	BC
F0A6 010800	00087		LD	BC,8
F0A9 EDB1	00088		CPIR
F0AB C1		00089		POP 	BC
F0AC 20D3	00090		JRNZ 	MAIN1-#
		00091 	;HL ZEIGT JETZT AUF 1.BEFEHL
		00092 	;DE ZEIGT JETZT AUF 1.ARGUMENT
F0AE 016CF0	00093		LD	BC,MAIN		;RUECKSPRUNG
F0B1 C5		00094		PUSH 	BC
F0B2 E9		00095		JMP 	(HL)		;SPRUNG ZUM PROGRAMM
		00096
		00097
		00098 	;EINZELNE ARGUMENTE HOLEN
		00099
F0B3 CD55F1	00100 	GFINA: 	CALL 	FNEXT		;FILENAME
F0B6 2100FF	00101		LD	HL,FINA
F0B9 0608	00102		LD	B,8
F0BB CD55F1	00103 	GFIN1: 	CALL 	FNEXT
F0BE 280C	00104		JRZ 	GFIN2-#		;WEIL TRENNZEICHEN
F0C0 77		00105		LD	(HL),A
F0C1 23		00106		INC 	HL
F0C2 13		00107		INC 	DE
F0C3 10F6	00108		DJNZ 	GFIN1-#
F0C5 CD55F1	00109 	GFIN3: 	CALL 	FNEXT		;UEBERFLUESSIGE ZEICHEN IGNORIEREN

F0C8 C8		00110		RZ
F0C9 13		00111		INC 	DE
F0CA 18F9	00112		JR	GFIN3-#
F0CC 3620	00113 	GFIN2: 	LD	(HL),' '	;MIT SPACE AUFFUELLEN
F0CE 23		00114		INC 	HL
F0CF 10FB	00115		DJNZ 	GFIN2-#
F0D1 C9		00116 	NICHT: 	RET
		00117
F0D2 CD55F1	00118 	GFITY: 	CALL 	FNEXT		;FILETYP/OPTION
F0D5 2108FF	00119		LD	HL,FITY
F0D8 0602	00120		LD	B,2
F0DA FE40	00121		CMP 	'@'
F0DC 20EE	00122		JRNZ 	GFIN2-#
F0DE 13		00123		INC 	DE
F0DF 18DA	00124		JR	GFIN1-#
		00125
F0E1 CD55F1	00126 	GCOM: 	CALL 	FNEXT		;ZUSAETZL.ANGABEN
F0E4 2110FF	00127		LD	HL,DATA
F0E7 0610	00128		LD	B,16
F0E9 FE3B	00129		CMP	';'
F0EB 20DF	00130		JRNZ 	GFIN2-#
F0ED 13		00131 	GCOM1: 	INC	DE
F0EE 1A		00132		LD	A,(DE)
F0EF FE0D	00133		CMP 	CR
F0F1 28D9	00134		JRZ 	GFIN2-#
F0F3 77		00135		LD	(HL),A
F0F4 23		00136		INC 	HL
F0F5 10F6	00137		DJNZ 	GCOM1-#
F0F7 C9		00138		RET
		00139

		00140 	;ASCII -> HEX
		00141
F0F8 3E20	00142 	INHEX: 	LD	A,' '		;HEX VON TASTATUR HOLEN
F0FA CDC2FF	00143		CALL 	CO
F0FD CD87F1	00144		CALL 	INL00
		00145
F100 CD55F1	00146 	ASHEX: 	CALL 	FNEXT		;KONVERTIEREN
F103 CD20F1	00147		CALL	CNVBN
F106 1A		00148		LD	A,(DE)
F107 D8		00149		RC			;KEIN HEX
F108 C5		00150		PUSH 	BC
F109 210000	00151		LD	HL,0
F10C 1A		00152 	ASH1: 	LD	A,(DE)
F10D CD20F1	00153		CALL 	CNVBN
F110 380B	00154		JRC 	ASH4-#
F112 29		00155 	ASH3: 	ADD 	HL,HL		;SCHIEBEN
F113 29		00156		ADD 	HL,HL
F114 29		00157		ADD 	HL,HL
F115 29		00158		ADD 	HL,HL
F116 0600	00159		LD	B,0
F118 4F		00160		LD	C,A
F119 09		00161		ADD 	HL,BC
F11A 13		00162		INC 	DE
F11B 18EF	00163		JR	ASH1-#
F11D C1		00164 	ASH4: 	POP 	BC
F11E AF		00165		XOR 	A
F11F C9		00166		RET
		00167
F120 D630	00168 	CNVBN: 	SUB 	30H
F122 D8		00169		RC

F123 FE0A	00170		CMP 	10
F125 3F		00171		CCF
F126 D0		00172		RNC
F127 FE11	00173		CMP 	11H
F129 D8		00174		RC
F12A FE17	00175		CMP 	17H
F12C 3F		00176		CCF
F12D D8		00177		RC
F12E D607	00178		SUB 	7
F130 C9		00179		RET
		00180
		00181
		00182 	;OUTHEX
		00183 	;WANDELT HEX=>ASCII
		00184 	;OUTH GIBT BYTE <A> AUS
		00185
F131 F5		00186 	OUTH: 	PUSH 	AF
F132 1F		00187		RRA			;SCHIEBEN
F133 1F		00188		RRA
F134 1F		00189		RRA
F135 1F		00190		RRA
F136 CD3AF1	00191		CALL 	OUTH1
F139 F1		00192		POP 	AF
F13A F5		00193 	OUTH1: 	PUSH 	AF
F13B E60F	00194		AND 	00001111B
F13D C630	00195		ADD 	030H
F13F FE3A	00196		CMP 	03AH
F141 3802	00197		JRC 	OUTH2-#
F143 C607	00198		ADD 	07
F145 CDC2FF	00199 	OUTH2: 	CALL 	CO

F148 F1 	00200 		POP 	AF
F149 C9 	00201 		RET
		00202
		00203 	;OUTHL GIBT WORT <HL> AUS
		00204
F14A F5		00205 	OUTHL: 	PUSH 	AF
F14B 7C		00206		LD	A,H
F14C CD31F1	00207		CALL 	OUTH
F14F 7D		00208		LD	A,L
F150 CD31F1	00209		CALL 	OUTH
F153 F1		00210		POP 	AF
F154 C9		00211		RET
		00212
F155 1A		00213 	FNEXT: 	LD	A,(DE)
F156 FE20	00214		CMP	' '
F158 200D	00215		JRNZ 	FNEX3-#
F15A 13		00216 	FNEX1: 	INC 	DE
F15B 1A		00217		LD	A,(DE)
F15C FE20	00218		CMP	' '
F15E 28FA	00219		JRZ 	FNEX1-#		;SPACE AUSBLENDEN
F160 FE0D	00220		CMP 	CR
F162 2805	00221		JRZ 	FNEX4-#
F164 AF		00222 	FNEX2: 	XOR 	A
F165 1A		00223		LD	A,(DE)
F166 C9		00224		RET
F167 FE0D	00225 	FNEX3: 	CMP CR
F169 37		00226 	FNEX4: 	SCF
F16A C8		00227		RZ
F16B 3F		00228		CCF
F16C FE2C	00229		CMP	','

F16E 13		00230		INC 	DE
F16F 28F3	00231		JRZ 	FNEX2-#
F171 B7		00232		OR	A
F172 1B		00233		DEC 	DE
F173 C9		00234		RET
		00235
		00236 	;PRINT GIBT ZEICHENKETTE BIS 0 AUS
		00237
F174 E3		00238 	PRINT: 	EX	(SP),HL
F175 7E		00239 	PR1:	LD	A,(HL)
F176 23		00240		INC 	HL
F177 B7		00241		OR	A		;PRINT-ENDE?
F178 2805	00242		JRZ 	PR2-#		;JA
F17A CDC2FF	00243		CALL 	CO
F17D 18F6	00244		JR	PR1-#
F17F E3		00245 	PR2:	EX	(SP),HL
F180 C9		00246		RET
		00247
		00248 	;BEFEHLSZEILEN-EINGABE
		00249
F181 CD74F1	00250 	INL:	CALL 	PRINT
F184 1E		00251		DB	NL
F185 26		00252		DB	26H		;PROMT
F186 00		00253		DB	0
F187 1142FF	00254 	INL00: 	LD	DE,TXTBU
F18A 0651	00255		LD	B,BULEN
F18C CDCBFF	00256 	INL1: 	CALL 	CI
F18F FE06	00257		CMP 	ERASE		;ZEILE LOESCHEN
F191 28EE 	00258 		JRZ 	INL-#
F193 FE08	00259		CMP 	CURL		;BACKSTEP

F195 280F	00260		JRZ 	INL3-#
F197 FE0D	00261		CMP 	CR		;RETURN TASTE?
F199 281B	00262		JRZ 	INL2-#
F19B FE20	00263		CMP 	20H
F19D 38ED	00264		JRC 	INL1-#		;NICHT DARSTELLBARES ZEICHEN
F19F 12		00265		LD	(DE),A
F1A0 CDC2FF	00266		CALL 	CO
F1A3 13		00267		INC 	DE
F1A4 10E6	00268		DJNZ 	INL1-#		;WEITER
F1A6 78		00269 	INL3: 	LD	A,B		;BACKSTEP
F1A7 FE51	00270		CMP 	BULEN
F1A9 28E1	00271		JRZ 	INL1-#
F1AB 1B		00272		DEC 	DE
F1AC 04		00273		INC 	B
F1AD CD74F1	00274		CALL 	PRINT
F1B0 08		00275		DB	CURL
F1B1		00276		DB	' '
F1B2 08		00277		DB	CURL
F1B3 00		00278		DB	0
F1B4 18D6	00279		JR	INL1-#
F1B6 12		00280	 INL2: 	LD	(DE),A		;CR
F1B7 3E1E	00281		LD	A,NL		;NEUE ZEILE
F1B9 CDC2FF	00282		CALL 	CO
F1BC 1142FF	00283		LD	DE,TXTBU	;ADR. TEXTPUFFER
F1BF C9		00284		RET
		00285
		00286
		00287 	;******************************
		00288 	;* MEMORY                     *
		00289 	;******************************

		00290
		00291 	;ALLE BEFEHLE MIT ! ENTFALLEN BZW ZUSAETZLICH BEI 80*24 CRT
		00292
F1C0 EDFF	00293		DA 	HEAD
F1C2		00294		DB	'MEMORY'
F1C8 00		00295		NOP
F1C9 CDD2F0	00296		CALL 	GFITY		;!
F1CC CD00F1	00297		CALL 	ASHEX
F1CF 3803	00298 	MEMO1:	JRC 	MEM-#
F1D1 220AFF	00299		LD	(ARG1),HL
F1D4 FE51	00300 	MEM:	CMP 	'Q'
F1D6 C8		00301		RZ
F1D7 3E0C	00302		LD	A,CLS		;BILDSCHIRM LOESCHEN
F1D9 CDC2FF	00303		CALL 	CO
F1DC 3A08FF	00304		LD	A,(FITY)	;!
F1DF FE41	00305		CMP 	'A'		;!
F1E1 3E48	00306		LD	A,'H'		;MODE HEX
F1E3 2002	00307		JRNZ 	MEMO0-# 	;!
F1E5 F680	00308		OR	80H		;!
F1E7 3210FF	00309 	MEMO0: 	LD	(MEMMO),A
F1EA 2A0AFF	00310 	MEMO: 	LD	HL,(ARG1)
F1ED 220CFF	00311		LD	(ARG2),HL	;ARG2=ARG1
		00312 	;AUSGABE
F1F0 3E0E	00313 	MEM1: 	LD	A,HOME
F1F2 CDC2FF	00314		CALL 	CO		;CRT HOME
F1F5 3A10FF	00315		LD	A,(MEMMO)	;MODE AUSGEBEN
F1F8 CBBF	00316		RES 	7,A		;!
F1FA CDC2FF	00317		CALL 	CO
F1FD CD74F1	00318		CALL 	PRINT
F200		00319		DB	'  CURSOR:'

F209 00		00320		DB	0
F20A 2A0CFF	00321 	MEM2: 	LD	HL,(ARG2)
F20D 7D		00322		LD 	A,L		;MODULO RECHNEN
F20E E6F0	00323		AND 	0-MEMB
F210 6F		00324		LD	L,A
F211 220CFF	00325		LD	(ARG2),HL	;ADR 1.BYTE
F214 EB		00326		EX	DE,HL		;DE=BEGINN
F215 2A0AFF	00327		LD	HL,(ARG1)	;CURSOR
F218 CD4AF1	00328		CALL 	OUTHL		;AUSGEBEN
F21B 3E1E	00329		LD	A,NL
F21D CDC2FF	00330		CALL 	CO
F220 ED52	00331		SBC 	HL,DE
F222 2C		00332		INC 	L		;DISTANZ ZUM CURSOR
F223 3A10FF	00333		LD	A,(MEMMO)
F226 67		00334		LD	H,A		;MODE
F227 0610	00335		LD	B,MEML		;ZEILENANZAHL
F229 C5		00336 	MEM3: 	PUSH 	BC		;RETTEN
F22A D5		00337		PUSH 	DE		;BEG.
F22B CB7C	00338		BIT 	7,H		;! ASCII AUSGABE?
F22D 280B	00339		JRZ 	MEM31-#		;! JA
F22F EB		00340		EX	DE,HL		;SONST ADRESSE AUSGEBEN
F230 CD4AF1	00341		CALL 	OUTHL
F233 EB		00342		EX	DE,HL
F234 CD74F1	00343		CALL 	PRINT
F237		00344		DB	'  '
F239 00		00345		DB	0
F23A 0610	00346 	MEM31:	LD	B,MEMB		;BYTEZAEHLER LADEN
F23C 1A		00347 	MEM4: 	LD	A,(DE)		;AUSGABE HEX
F23D 13		00348		INC 	DE
F23E CD31F1	00349		CALL 	OUTH		;BYTE AUSGEBEN

F241 2D		00350		DEC 	L		;CURSOR SETZEN?
F242 3E20	00351		LD	A,' '
F244 2001	00352		JRNZ 	MEM5-#		;NEIN
F246 AF		00353		XOR 	A		;CODE FUER CURSOR
F247 CDC2FF	00354 	MEM5: 	CALL 	CO		;SPACE ODER CURSOR AUSGEBEN
F24A 10F0	00355		DJNZ 	MEM4-#		;WEITER
F24C CB7C	00356		BIT 	7,H		;! ASCII AUSGABE?
F24E 2804	00357		JRZ 	MEM51-#		;! JA
		00358 	;LD	A,' '	;!
		00359 	;CALL	CO	;!
F250 33		00360		INC 	SP
F251 33		00361		INC 	SP
F252 1812	00362		JR	MEM71-#
F254 0610	00363 	MEM51: 	LD	B,MEMB		;ZAEHLER
F256 D1		00364 		POP 	DE
F257 1A		00365 	MEM6: 	LD	A,(DE)		;ASCII AUSGEBEN
F258 13		00366		INC 	DE
F259 E67F	00367		AND 	7FH		;BIT 7 LOESCHEN
F25B FE20	00368		CMP			;TEST NICHT DARSTELLBAR?
F25D 3002	00369		JRNC 	MEM7-#		;DOCH
F25F 3E2E	00370		LD	A,'.'		;ANSONSTEN PUNKT AUSGEBEN
F261 CDC2FF	00371 	MEM7: 	CALL	CO
F264 10F1	00372		DJNZ 	MEM6-#		;WEITER
F266 CB7C	00373 	MEM71: 	BIT 	7,H
F268 2805	00374		JRZ 	MEM72-#
F26A 3E1E	00375		LD	A,NL
F26C CDC2FF	00376		CALL	CO		;NEUE ZEILE
F26F C1		00377 	MEM72: 	POP 	BC
F270 10B7	00378		DJNZ 	MEM3-#		;ZEILENZAHLER
		00379 	;EINGABE

F272 CBBC	00380		RES 	7,H
F274 7C		00381		LD	A,H		;MODE
F275 FE51	00382		CMP 	'Q'
F277 2006	00383		JRNZ 	MEM73-#
F279 CDF8F0	00384		CALL 	INHEX		;NEUE ADRESSE
F27C C3CFF1	00385		JMP 	MEMO1
F27F D5		00386 	MEM73: 	PUSH 	DE		;ENDADR.+1 MERKEN
F280 5C		00387		LD	E,H		;MODE FUER SPAETER
F281 1602	00388		LD	D,2		;TETRADEN BYTEEINGABE
F283 CDCBFF	00389 	MEM8: 	CALL 	CI		;ZEICHEN VON TASTATUR HOLEN
F286 FE1B	00390		CMP 	ESC		;UMSCHALTUNG HEX<==>ASCII EINGABE
F288 2015	00391		JRNZ 	MEM10-#
F28A 3E48	00392 	MEM81: 	LD	A,'H'
F28C BB		00393		CMP 	E		;VERGLEICH MIT MODE
F28D 2002	00394		JRNZ 	MEM9-#		;H ==>MODE
F28F 3E41	00395		LD	A,'A'
F291 5F		00396 	MEM9: 	LD	E,A		;!
F292 3A10FF	00397		LD	A,(MEMMO)	;!
F295 E680	00398		AND 	80H		;!
F297 B3		00399		OR	E		;!
F298 3210FF	00400 	MEM91: 	LD	(MEMMO),A
F29B D1		00401		POP 	DE		;KORR.
F29C C3F0F1	00402		JMP 	MEM1
F29F 01F0FF	00403 	MEM10:	LD	BC,-MEMB	;INC FUER CURSOR
F2A2 FE0B	00404		CMP 	CURU		;HOCH
F2A4 2836	00405		JRZ 	MEM15-#
F2A6 0EFF	00406		LD	C,-1		;BC=-1
F2A8 FE08	00407		CMP 	CURL		;LINKS
F2AA 2830	00408		JRZ 	MEM15-#
F2AC 03		00409		INC 	BC

F2AD 03		00410		INC 	BC		;BC=1
F2AE FE09	00411		CMP 	CURR		;RECHTS
F2B0 282A	00412		JRZ 	MEM15-#
F2B2 0E10	00413		LD	C,MEMB
F2B4 FE0A	00414		CMP 	CURD		;RUNTER
F2B6 2824	00415		JRZ 	MEM15-#
F2B8 FE51	00416		CMP 	'Q'		;QUIT?
F2BA 28D5	00417		JRZ 	MEM9-#
		00418 	;RAM BESCHREIBEN
F2BC 6F		00419 	MEM11: 	LD	L,A		;ZEICHEN RETTEN
F2BD 7B		00420		LD	A,E		;MODE
F2BE FE41	00421		CMP 	'A'		;ASCII EINGABE?
F2C0 7D		00422		LD	A,L
F2C1 2810	00423		JRZ 	MEM14-#		;JA
		00424 	; HEX EINGABE
F2C3 CD20F1	00425		CALL 	CNVBN
F2C6 38BB	00426		JRC 	MEM8-#		;KEIN HEX,NEUE EINGABE
F2C8 210EFF	00427		LD	HL,ARG3		;HILFSZELLEN
F2CB ED6F	00428		RLD
F2CD 15		00429		DEC 	D		;TETRADENZAEHLER
F2CE 20B3	00430		JRNZ 	MEM8-#		;NAECHSTES ZEICHEN
F2D0 3A0EFF	00431 	MEM13: 	LD	A,(ARG3)	;NEUES BYTE
F2D3 2A0AFF	00432 	MEM14: 	LD	HL,(ARG1)	;CURSOR
F2D6 77		00433		LD	(HL),A		;=>RAM
F2D7 BE		00434		CMP 	(HL)		;ANGEKOMMEN?
F2D8 202B	00435		JRNZ	MEM19-#		;NEIN,RAM FEHLER
F2DA 0E01	00436		LD	C,1		;BC=1;ADR INC
F2DC D1		00437 	MEM15: 	POP 	DE		;ENDE+1
F2DD 2A0AFF	00438		LD	HL,(ARG1)	;CURSOR
F2E0 09		00439		ADD 	HL,BC		;CURSOR+INC

F2E1 220AFF	00440		LD	(ARG1),HL	;NEUER CURSOR
F2E4 CB78	00441		BIT 	7,B		;CURSOR RICHTUNG
F2E6 2805	00442		JRZ 	MEM16-#		;ADDITION
F2E8 EB		00443		EX	DE,HL		;DE=CURSOR
F2E9 13		00444		INC 	DE
F2EA 2A0CFF	00445		LD	HL,(ARG2)	;ANFANG
F2ED B7		00446 	MEM16: 	OR	A
F2EE ED52	00447		SBC 	HL,DE		;ANF-CURS,CURS-ENDE
F2F0 2803	00448		JRZ 	MEM17-#
F2F2 FAF0F1	00449		JPM 	MEM1
F2F5 0D		00450 	MEM17: 	DEC C			;C=1?
F2F6 2002	00451		JRNZ MEM18-#
F2F8 0E0F	00452		LD	C,MEMB-1
F2FA 0C		00453 	MEM18: 	INC 	C
F2FB 2A0CFF	00454		LD	HL,(ARG2)	;NEUEN ANFANG BERECHNEN
F2FE 09		00455		ADD	HL,BC
F2FF 220CFF	00456		LD	(ARG2),HL
F302 C3F0F1	00457		JMP	MEM1
F305 CD74F1	00458 	MEM19: 	CALL	PRINT
F308 0C		00459		DB	CLS
F309		00460		DB	'RAM ERROR '
F313 00		00461		DB	0
F314 D1		00462		POP	DE
F315 C30AF2	00463		JMP	MEM2
		00464
		00465 	;******************************
		00466 	;* MOVE                       *
		00467 	;******************************
		00468
F318 EDFF	00469		DA	HEAD

F31A		00470		DB	'MOVE'
F31E 00		00471		NOP
F31F CD00F1	00472		CALL 	ASHEX
F322 DA59F0	00473		JPC 	ERROR
F325 220AFF	00474		LD	(ARG1),HL
F328 CD00F1	00475		CALL 	ASHEX
F32B DA59F0	00476		JPC 	ERROR
F32E 220CFF	00477		LD	(ARG2),HL
F331 CD00F1	00478		CALL 	ASHEX
F334 DA59F0	00479		JPC 	ERROR
F337 44		00480		LD 	B,H
F338 4D		00481		LD	C,L
F339 2A0AFF	00482		LD	HL,(ARG1)
F33C ED5B0CFF 	00483		LD	DE,(ARG2)
F340 E5		00484 	MOVE: 	PUSH 	HL
F341 AF		00485		XOR 	A
F342 EB		00486		EX	DE,HL
F343 ED52	00487		SBC 	HL,DE		;ENDE-ANF=ANZAHL
F345 23		00488		INC 	HL
F346 50		00489		LD	D,B
F347 59		00490		LD	E,C		;DE=ZIEL
F348 44		00491		LD	B,H
F349 4D		00492		LD	C,L		;BC=LAENGE
F34A E1		00493		POP 	HL		;HL=QUELLE
F34B E5		00494		PUSH 	HL
F34C B7		00495		OR	A		;CY=0
F34D ED52	00496		SBC 	HL,DE		;MOVE-RICHTUNG
F34F E1		00497		POP 	HL
F350 3804	00498		JRC 	MOVE1-#
F352 EDB0	00499		LDIR			;VORWAERTS UMLADEN


F354 1808	00500		JR	MOVE2-#
F356 0B		00501 	MOVE1: 	DEC 	BC
F357 09		00502		ADD 	HL,BC
F358 EB		00503		EX	DE,HL
F359 09		00504		ADD 	HL,BC
F35A EB		00505		EX	DE,HL
F35B 03		00506		INC 	BC
F35C EDB8	00507		LDDR
F35E CDCBFF	00508 	MOVE2: 	CALL 	CI		;QUIT/MEM
F361 2A0AFF	00509		LD	HL,(ARG1)
F364 C3CFF1	00510		JMP 	MEMO1
		00511
		00512
		00513 	;******************************
		00514 	;* LOAD                       *
		00515 	;******************************
		00516
		00517 	;D7=1.LESEN,D6=UEBERLESEN
		00518 	;D5=BLOCK WAR FALSCH,D4=ALLES KORRIGIERT
		00519
F367 EDFF	00520		DA 	HEAD
F369		00521		DB	'LOAD'
F36D 00		00522		NOP
F36E CDB3F0	00523 	LDEXT: 	CALL 	GFINA
F371 CDD2F0	00524		CALL 	GFITY
F374 CD00F1	00525		CALL 	ASHEX
F377 3003	00526		JRNC 	LOAD-#
F379 210000	00527		LD	HL,0		;KEIN OFFSET
F37C E5		00528 	LOAD: 	PUSH 	HL
F37D FDE1	00529		POP 	IY

F37F CD61FA	00530		CALL 	CINIT
F382 2A08FF	00531		LD	HL,(FITY)	;OPTION
F385 1E00	00532		LD	E,0		;E=FEHLER,D=KORREKTURZAHLER
F387 D9		00533		EXX
F388 1680	00534 	LOD0: 	LD	D,80H		;1.LESEN
F38A CB7A	00535 	LOD1: 	BIT 	7,D
F38C CA8CF4	00536		JPZ 	LOD12		;FILE NICHT LESBAR
F38F C9		00537		EXX
F390 1600	00538		LD	D,0
F392 D9		00539		EXX
F393 CDADF4	00540 	LOD2: 	CALL 	LOD14		;SYNCHRONISIEREN
F396 FE1E	00541		CMP 	NL
F398 2003	00542		JRNZ 	LOD3-#
F39A CDC8FF	00543		CALL 	CRI
F39D FE01	00544 	LOD3: 	CMP 	SOH
F39F 20F2	00545		JRNZ 	LOD2-#		;KEIN SOH
F3A1 AF		00546		XOR 	A
F3A2 4F		00547		LD	C,A		;PRUEFSUMME=0
F3A3 5F		00548		LD	E,A		;BLOCKZAHLER
F3A4 2100FF	00549		LD	HL,FINA
F3A7 0608	00550		LD	B,8
F3A9 CDC8FF	00551 	LOD4: 	CALL 	CRI		;FILENAME VERGLEICHEN
F3AC BE		00552		CMP 	(HL)
F3AD 20DB	00553		JRNZ 	LOD1-#		;NICHT GLEICH
F3AF 23		00554		INC 	HL
F3B0 81		00555		ADD 	C
F3B1 4F		00556		LD	C,A
F3B2 10F5	00557		DJNZ 	LOD4-#
F3B4 0618	00558		LD	B,24		;KOPF LADEN
F3B6 CB7A	00559		BIT 	7,D		;1.LESEN

F3B8 2002	00560		JRNZ 	LOD5-#		;JA
F3BA CBF2	00561		SET 	6,D		;2.LESEN,KOPF UEBERLESEN
F3BC CDBBF4	00562 	LOD5: 	CALL 	LOD16		;BLOCK LESEN
F3BF 2804	00563		JRZ 	LOD51-#		;KOPF RICHTIG
F3C1 CB7A	00564		BIT 	7,D
F3C3 20C3	00565		JRNZ 	LOD0-#
F3C5 CB7A	00566 	LOD51: 	BIT 	7,D
F3C7 2829	00567		JRZ 	LOD6-#		;2.LESEN
F3C9 CD74F1	00568		CALL PRINT
F3CC 1E		00569		DB	NL
F3CD		00570		DB	'FILE FOUND '
F3D8 00		00571		DB	0
F3D9 FDE5	00572		PUSH 	IY
F3DB C1		00573		POP 	BC		;OFFSET
F3DC 2A0AFF	00574		LD	HL,(ARG1)
F3DF 09		00575		ADD 	HL,BC
F3E0 220AFF	00576		LD	(ARG1),HL
F3E3 2A0CFF	00577		LD	HL,(ARG2)
F3E6 09		00578		ADD 	HL,BC
F3E7 220CFF	00579		LD	(ARG2),HL
F3EA 78		00580		LD	A,B
F3EB B1		00581		OR	C
F3EC 2804	00582		JRZ 	LOD6-#		;OFFSET=O
F3EE AF		00583		XOR 	A
F3EF 3208FF	00584		LD	(FITY),A	;AUTOSTART UNTERDRUECKEN
		00585 	;DATENBLOECKE LESEN
F3F2 DD2110FF 	00586 	LOD6: 	LD	IX,DATA
F3F6 2A0AFF	00587		LD	HL,(ARG1)	;ANFANGSADR
F3F9 CDADF4	00588 	LOD7: 	CALL 	LOD14
F3FC FE04	00589		CMP 	EOT

F3FE CA8CF4	00590		JPZ 	LOD12
F401 FE03	00591		CMP 	ETX		;ENDE?
F403 285E	00592		JRZ 	LOD10-#		;JA
F405 FE1D	00593		CMP 	GS
F407 20F0	00594		JRNZ 	LOD7-#		;KEIN RICHTIGER BLOCKANFANG
F409 0E00	00595		LD	C,0
F40B CDC8FF	00596		CALL 	CRI		;BLOCKLAENGE
F40E 47		00597		LD	B,A
F40F 4F		00598		LD	C,A
F410 CBAA	00599		RES 	5,D
F412 CB7A	00600		BIT 	7,D
F414 2026	00601		JRNZ 	LOD8-#		;1.LESEN
F416 CBF2	00602		SET 	6,D		;FUER UBERLESEN,2.LESEN
F418 CB62	00603		BIT 	4,D
F41A 2020	00604		JRNZ 	LOD8-#		;ALLES KORR.
F41C D5		00605		PUSH 	DE
F41D 7A		00606		LD	A,D
F41E E60F	00607		AND 	0FH
F420 DD5601	00608		LD	D,(IX+1)
		00609 	;WAR BLOCK SCHON FALSCH
F423 BA		00610		CMP 	D
F424 D1		00611		POP 	DE
F425 2015	00612		JRNZ 	LOD8-#		;NEIN
F427 DD7E00	00613		LD	A,(IX)
F42A BB		00614		CMP 	E
F42B 200F	00615		JRNZ 	LOD8-#		;NEIN
F42D DD23	00616		INC 	IX
F42F DD23	00617		INC 	IX
F431 D9		00618		EXX
F432 15		00619		DEC 	D		;KORREKTURZAEHLER-1

F433 D9		00620		EXX
F434 2002	00621		JRNZ 	LOD71-#		;ALLES KORRIGIERT?
F436 CBE2	00622		SET 	4,D		;KEINE FALSCHEN BLOECKE MEHR
F438 CBB2	00623 	LOD71: 	RES 	6,D		;FREIGABE RAM SCHREIBEN
F43A CBEA	00624		SET 	5,D		;KORREKTURFLAG
F43C CDBBF4	00625 	LOD8: 	CALL 	LOD16		;BLOCK LESEN
F43F 281F	00626		JRZ 	LOD9-#		;PRUEFSUMME OK
F441 CB6A	00627		BIT 	5,D		;WURDE BLOCK EBEN KORRIGIERT?
F443 2047	00628		JRNZ 	LOD12-#		;JA,FILE NICHT LESBAR
F445 CB7A	00629		BIT 	7,D		;NEIN
F447 2817	00630		JRZ 	LOD9-#		;FEHLER IGNORIEREN
F449 D9		00631		EXX
F44A 14		00632		INC 	D
F44B 7A		00633		LD	A,D
F44C D9		00634		EXX			;KORREKTURZAEHLER+1
F44D FE08	00635		CMP 	8
F44F CA88F3	00636		JPZ 	LOD0		;ZU VIELE FEHLER,NOCHMAL VERSUCHEN
F452 DD7201	00637		LD	(IX+1),D	;BLOCKNR. ABLEGEN
F455 DDCB01BE 	00638		RES 	7,(IX+1)	;FLAG LOESCHEN
F459 DD7300	00639		LD	(IX+0),E
F45C DD23	00640		INC 	IX		;ERRORPOINTER
F45E DD23	00641		INC 	IX
F460 13		00642 	LOD9: 	INC 	DE		;BLOCKZAEHLER+1
F461 1896	00643		JR	LOD7-#
		00644 	;ETX BEHANDLUNG
F463 7A		00645 	LOD10: 	LD	A,D
F464 E680	00646		AND 	80H		;ZAHLER LOESCHEN,1/2-FLAG NICHT
F466 57		00647		LD	D,A
F467 2B		00648		DEC 	HL		;ENDADR.-1
F468 ED4B0CFF 	00649		LD	BC,(ARG2)

F46C ED42	00650		SBC 	HL,BC		;STIMMT ENDADR.?
F46E C28AF3	00651		JPNZ 	LOD1		;NEIN
F471 D9		00652		EXX
F472 7A		00653		LD	A,D
F473 B7		00654		OR	A		;TRATEN FEHLER AUF?
F474 2805	00655		JRZ 	LOD11-#		;NEIN
F476 D9		00656		EXX
F477 55		00657		LD	D,L		;2.LESEN
F478 C393F3	00658		JMP 	LOD2
F47B CD9BF4	00659 	LOD11: 	CALL 	LOD13		;FEHLERAUSGABE
F47E 3A08FF	00660		LD	A,(FITY)
F481 FE50	00661		CMP 	'P'
F483 C0		00662		RNZ
F484 7D		00663		LD	A,L
F485 FE51	00664		CMP	'Q'
F487 C8		00665		RZ
F488 2A0EFF	00666		LD	HL,(ARG3)
F48B E9		00667		JMP 	(HL)		;AUTOSTART
F48C D9		00668 	LOD12: 	EXX
F48D CD74F1	00669		CALL 	PRINT
F490		00670		DB	' BAD FILE '
F49A 00		00671		DB	0
F49B 7B		00672 	LOD13: 	LD	A,E
F49C B7		00673		OR	A
F49D C8		00674		RZ
F49E CD31F1	00675		CALL 	OUTH
F4A1 CD74F1	00676		CALL 	PRINT
F4A4		00677		DB	' ERRORS'
F4AB 00		00678		DB	0
F4AC C9		00679		RET

		00680 	;SYNCHRONISIEREN
F4AD CDC8FF	00681 	LOD14: 	CALL 	CRI
F4B0 3C		00682		INC 	A
F4B1 20FA	00683		JRNZ 	LOD14-#
F4B3 CDC8FF	00684 	LOD15: 	CALL 	CRI
F4B6 FEFF	00685		CMP 	0FFH
F4B8 28F9	00686		JRZ 	LOD15-#
F4BA C9		00687		RET
		00688 	;BLOCK LESEN
F4BB CDC8FF	00689 	LOD16: 	CALL 	CRI
F4BE CB72	00690		BIT 	6,D
F4C0 2001	00691		JRNZ 	LOD17-#		;UEBERLESEN
F4C2 77		00692		LD	(HL),A
F4C3 31		00693 	LOD17: 	ADD 	C
F4C4 4F		00694		LD	C,A
F4C5 23		00695		INC 	HL
F4C6 10F3	00696		DJNZ 	LOD16-#
F4C8 CDC8FF	00697		CALL 	CRI		;PRUEFSUMME
F4CB 81		00698		ADD 	C
F4CC CBB2	00699		RES 	6,D		;PRUEFSUMME OK
F4CE C8		00700		RZ
F4CF D9		00701		EXX
F4D0 1C		00702		INC 	E
F4D1 D9		00703		EXX			;FEHLERZAHLER+1
F4D2 C9		00704		RET
		00705
		00706 	;******************************
		00707 	;* SAVE                       *
		00708 	;******************************
		00709

F4D3 EDFF	00710		DA 	HEAD
F4D5		00711		DB	'SAVE'
F4D9 00		00712		NOP
F4DA CDB3F0	00713 	SAEXT: 	CALL 	GFINA		;FILENAME HOLEN
F4DD CDD2F0	00714		CALL 	GFITY		;FILETYP
F4E0 CD00F1	00715		CALL 	ASHEX		;STARTADRESSE
F4E3 DA59F0	00716		JPC 	ERROR
F4E6 220AFF	00717		LD	(ARG1),HL
F4E9 CD00F1	00718		CALL 	ASHEX		;ENDADRESSE
F4EC DA59F0	00719		JPC 	ERROR
F4EF 220CFF	00720		LD	(ARG2),HL
F4F2 CD00F1	00721		CALL 	ASHEX		;EINTRITTSPUNKT
F4F5 3003	00722		JRNC 	SAVE-#
F4F7 211EF0	00723		LD	HL,RSTAR	;FEHLT,DESHALB RSTAR
F4FA 220EFF	00724 	SAVE: 	LD	(ARG3),HL
F4FD CDE1F0	00725		CALL 	GCOM
F500 CD61FA	00726		CALL 	CINIT
F503 2189F5	00727		LD	HL,SAVEE
F506 E5		00728		PUSH 	HL
F507 211AF5	00729		LD	HL,SAVE0
F50A E5		00730		PUSH 	HL		;RETURN=>SAVE0
F50B E5		00731		PUSH 	HL
F50C 0E1E	00732		LD	C,NL		;FILEANFANG
F50E 3A08FF	00733		LD	A,(FITY)
F511 FE20	00734		CMP 	' '
F513 2005	00735		JRNZ 	SAVE0-#
F515 3E50	00736		LD	A,'P'		;KEINE ANGABE
F517 3208FF	00737		LD	(FITY),A
F51A 0614	00738 	SAVE0: 	LD	B,20
F51C 3EFF	00739 	SAVE1: 	LD	A,0FFH		;SYNCHRCNZEICHEN

F51E CDBEFF	00740		CALL 	CPO
F521 10F9	00741		DJNZ 	SAVE1-#
F523 79		00742		LD	A,C
F524 CDBEFF	00743		CALL 	CPO		;NL ODER SYNCHRONZEICHEN
F527 3E01	00744		LD	A,SOH		;START KOPF
F529 CDBEFF	00745		CALL	 CPO
		00746 	;KOPF AUSGEBEN
		00747 	;SOH/FILENAME/TT/AA/EE/SS/................/PS/STX
F52C 2100FF	00748		LD	HL,FINA
F52F 0620	00749		LD	B,32
F531 0E00	00750		LD	C,0
F533 7E		00751 	SAVE2: 	LD	A,(HL)
F534 CDBEFF	00752		CALL 	CPO
F537 7E		00753		LD	A,(HL)
F538 81		00754		ADD 	C		;PRUEFSUMME
F539 4F		00755		LD	C,A
F53A 23		00756		INC 	HL
F53B 10F6	00757		DJNZ 	SAVE2-#
F53D ED44	00758		NEG
F53F CDBEFF	00759		CALL 	CPO		;PUEFSUMME
F542 3E02	00760		LD	A,STX		;KOPF-ENDE
F544 CDBEFF	00761		CALL 	CPO
F547 ED5B0AFF 	00762		LD	DE,(ARG1)	;ANF.ADR.
F54B 0606	00763 	SAVE3: 	LD	B,6
F54D 3EFF	00764 	SAVE4: 	LD	A,0FFH		;SYNC.
F54F CDBEFF	00765		CALL 	CPO
F552 10F9	00766		DJNZ 	SAVE4-#
F554 2A0CFF	00767		LD	HL,(ARG2)	;ENDADR.
F557 23		00768		INC 	HL
F558 ED52	00769		SBC 	HL,DE		;BLOCKLAENGE BERECHNEN

F55A 2826	00770		JRZ 	SAVE8-#		;FERTIG
F55C AF		00771		XOR 	A
F55D B4		00772		OR	H
F55E 2004	00773		JRNZ 	SAVE5-#
F560 85		00774		ADD 	L
F561 F266F5	00775		JPP 	SAVE6
F564 2E80	00776 	SAVE5: 	LD	L,80H
F566 45		00777 	SAVE6: 	LD	B,L		;BYTEZAEHLER
F567 3E1D	00778		LD	A,GS		;START BLOCK
F569 CDBEFF	00779		CALL 	CPO
F56C 78		00780		LD	A,B
F56D 4F		00781		LD	C,A
F56E CDBEFF	00782		CALL 	CPO		;BLOCKLAENGE
F571 1A		00783 	SAVE7: 	LD	A,(DE)
F572 CDBEFF	00784		CALL 	CPO
F575 1A		00785		LD	A,(DE)
F576 13		00786		INC 	DE
F577 81		00787		ADD 	C
F578 4F		00788		LD	C,A
F579 10F6	00789		DJNZ 	SAVE7-#
F57B ED44	00790		NEG
F57D CDBEFF	00791		CALL 	CPO		;PRUEFSUMME
F580 18C9	00792		JR	SAVE3-#
F582 3E03	00793 	SAVE8: 	LD	A,ETX
F584 0EFF	00794		LD	C,0FFH		;2.AUFZEICHNUNG
F586 C3BEFF	00795		JMP 	CPO
F589 0620	00796 	SAVEE: 	LD	B,32
F58B 3EFF	00797 	SAVEF: 	LD	A,0FFH
F58D CDBEFF	00798		CALL 	CPO
F590 10F9	00799		DJNZ 	SAVEF-#

F592 3E04	00800		LD 	A,EOT
F594 C3BEFF	00801		JMP 	CPO
		00802
		00803
		00804 	;******************************
		00805 	;* IN OUT                     *
		00806 	;******************************
		00807
F597 EDFF	00808		DA 	HEAD
F599		00809		DB	'IN'
F59B 00		00810		NOP
F59C CD00F1	00811		CALL 	ASHEX
F59F 4D		00812		LD	C,L
F5A0 ED78	00813		IN	A
F5A2 C331F1	00814		JMP 	OUTH
		00815
F5A5 EDFF	00816		DA 	HEAD
F5A7		00817		DB	'OUT'
F5AA 00		00818		NOP
F5AB CD00F1	00819		CALL 	ASHEX		;PORTADRESSE HOLEN
F5AE 4D		00820		LD	C,L
F5AF CD00F1	00821		CALL 	ASHEX		;WERT HOLEN
F5B2 ED69	00822		OUT 	L
F5B4 C9		00823		RET
		00824
		00825 	;******************************
		00826 	;* FILL                       *
		00827 	;******************************
		00828
F5B5 EDFF	00829		DA HEAD

F5B7		00830		DB	'FILL'
F5BB 00		00831		NOP
F5BC CD00F1	00832		CALL 	ASHEX
F5BF DA59F0	00833		JPC 	ERROR
F5C2 220AFF	00834		LD	(ARG1),HL
F5C5 CD00F1	00835		CALL 	ASHEX
F5C8 DA59F0	00836		JPC 	ERROR
F5CB 220CFF	00837		LD	(ARG2),HL
F5CE CD00F1	00838		CALL 	ASHEX
F5D1 4D		00839		LD	C,L		;FUELLBYTE
F5D2 2A0AFF	00840		LD	HL,(ARG1)
F5D5 ED5B0CFF 	00841		LD	DE,(ARG2)
F5D9 3002	00842		JRNC 	FILL1-#
F5DB 0E00	00843		LD	C,0		;FUELLBYTE 00 FESTLEGEN
F5DD 71		00844 	FILL1: 	LD	(HL),C
F5DE E5		00845		PUSH 	HL
F5DF AF		00846		XOR 	A
F5E0 EB		00847		EX	DE,HL
F5E1 ED52	00848		SBC 	HL,DE
F5E3 44		00849		LD	B,H
F5E4 4D		00850		LD	C,L
F5E5 E1		00851		POP 	HL
F5E6 54		00852		LD	D,H
F5E7 5D		00853		LD	E,L
F5E8 13		00854		INC 	DE
F5E9 EDB0	00855		LDIR
F5EB C9		00856		RET
		00857
		00858
		00859 	;******************************

		00860 	;* MEMSIZE                    *
		00861 	;******************************
		00862
F5EC EDFF	00863		DA	HEAD
F5EE		00864		DB	'SIZE'
F5F2 00		00865		NOP
F5F3 CD74F1	00866		CALL 	PRINT
F5F6		00867		DB	'SIZE:'
F5FB 00		00868		DB	0
F5FC 2AB1FF	00869		LD	HL,(MSIZE)
F5FF CD4AF1	00870		CALL 	OUTHL
F602 CD74F1	00871		CALL 	PRINT
F605            00872		DB	' RAMTOP:'
F60D 00		00873		DB	0
F60E CD32FA	00874		CALL 	MEMCH		;RAMTEST
F611 CD4AF1	00875		CALL	 OUTHL
F614 22B1FF	00876		LD	(MSIZE),HL
F617 CDF8F0	00877		CALL 	INHEX
F61A D8		00878		RC
F61B 22B1FF	00879		LD	(MSIZE),HL
F61E C9		00880		RET
		00881
		00882
		00883 	;******************************
		00884 	;* TESTPROGRAMME              *
		00885	;******************************
		00886
		00887 	;NMI VEKTOR EINTRAGEN
F61F EDFF	00888		DA	HEAD
F621		00889		DB	'NMI'

F624 00		00890		NOP
F625 216600	00891 	NMIV: 	LD	HL,66H
F628 36C3	00892		LD	(HL),0C3H	;JMP
F62A 23		00893		INC 	HL
F62B 3631	00894		LD	(HL),L(BREAK)
F62D 23		00895		INC 	HL
F62E 36F6	00896		LD	(HL),H(BREAK)
F630 C9		00897		RET
		00898
F631 CD55F6	00899 	BREAK: 	CALL 	UPUSH		;BEI NMI
F634 E1		00900		POP 	HL		;PC
F635 ED73ABFF 	00901		LD	(USP),SP
F639 22ADFF	00902		LD	(UPC),HL
F63C 31FEFE	00903		LD	SP,STACK
F63F CD74F1	00904		CALL 	PRINT
F642		00905		DB	'BREAK AT '
F64B 00		00906		DB	0
F640 CD4AF1	00907		CALL 	OUTHL
F648 216CF0	00908		LD	HL,MAIN
F652 E5		00909		PUSH 	HL
F653 ED45	00910		RETN
		00911
		00912 	;CPU AUSRAEUMEN
F655 ED73AFFF 	00913 	UPUSH: 	LD	(SSP),SP
F659 31A9FF	00914		LD	SP,HIF
F65C FDE5	00915		PUSH 	IY
F65E DDE5	00916		PUSH 	IX
F660 D9		00917		EXX			;ERST ZWEITREGISTER
F661 08		00918		EXAF
F662 E5		00919		PUSH 	HL

F663 D5		00920		PUSH 	DE
F664 C5		00921		PUSH 	BC
F665 F5		00922		PUSH 	AF
F666 D9		00923		EXX			;DANN HAUPTREGISTER
F667 08		00924		EXAF
F668 E5		00925		PUSH 	HL
F669 D5		00926		PUSH 	DE
F66A C5		00927		PUSH 	BC
F66B F5		00928		PUSH 	AF
F66C ED57	00929		LD	A,I
F66E 32A9FF	00930		LD	(HIF),A
F671 181C	00931 		JR	UPOP1-#
		00932
		00933 	;CPU EINRAEUMEN
F673 ED73AFFF 	00934 	UPOP:	LD	(SSP),SP
F677 3195FF	00935		LD	SP,UREG
F67A 3AA9FF	00936		LD	A,(HIF)
F67D ED47	00937		LD	I,A
F67F F1		00938		POP 	AF
F680 C1		00939		POP 	BC
F681 D1		00940		POP 	DE
F682 E1		00941		POP 	HL
F683 D9		00942		EXX
F684 08		00943           EXAF
F685 F1		00944		POP 	AF
F686 C1		00945		POP 	BC
F687 D1		00946		POP 	DE
F688 E1		00947		POP 	HL
F689 DDE1	00948		POP 	IX
F68B FDE1	00949		POP 	IY

F68D D9		00950		EXX
F68E 08		00951		EXAF
F68F ED7BAFFF 	00952 	UPOP1: 	LD	SP,(SSP)
F693 C9		00953		RET
		00954
F694 EDFF	00955		DA 	HEAD
F696		00956		DB	'GO'
F698 00		00957		NOP
F699 1B		00958		DEC 	DE
F69A CD00F1	00959		CALL 	ASHEX		;ADR.
F69D 383A	00960		JRC 	GO1-#		;KEINE ADR
		00961
F69F E5		00962		PUSH 	HL		;ADR. RETTEN
F6A0 CD00F1	00963		CALL 	ASHEX		;BREAKP.?
F6A3 3829	00964		JRC 	GO2-#		;KEIN BREAKPOINT
		00965
F6A5 3ACFFF	00966		LD	A,(BRKPT+l)
F6A8 FEF0	00967		CMP 	H(START)	;IST BRKPT SCHON GESETZT?
F6AA 280E	00968		JRZ 	GO01-#		;NEIN
F6AC E5		00969		PUSH 	HL		;BREAKPOINT RETTEN
F6AD 2ACEFF	00970		LD	HL,(BRKPT)	;ALTER BRKPT
F6B0 7E		00971		LD	A,(HL)		;STEHT DA NOCH RST 38?
F6B1 FEFF	00972		CMP 	0FFH
F6B3 2004	00973		JRNZ 	GO0-#		;NEIN/ALSO KEIN ALTER BREAKPOINT
F6B5 3AD0FF	00974		LD	A,(BRKPT+2)	;AUSTAUSCHEN
F6B8 77		00975		LD	(HL),A
F6B9 E1		00976 	GO0:	POP 	HL		;NEUER BRKPT ZURUECK
F6BA 22CEFF	00977 	GO01: 	LD	(BRKPT),HL	;NEUEN BRKPT SPEICHERN
F6BD 7E		00978		LD	A,(HL)		;BYTE RETTEN
F6BE 32D0FF	00979		LD	(BRKPT+2),A

F6C1 36FF	00980		LD	(HL),0FFH	;RST38 EINTRAGEN
F6C3 213800	00981		LD	HL,38H
F6C6 36C3	00982		LD	(HL),0C3H	;JMP
F6C8 23		00983		INC 	HL
F6C9 36FC	00984		LD	(HL),L(BRK)
F6CB 23		00985		INC 	HL
F6CC 36F6	00986		LD	(HL),H(BRK)
F6CE E1		00987 	GO2:	POP 	HL
F6CF 31C0FE	0Q988		LD	SP,USTCK	;USERSTACK
F6D2 116CF0	00989		LD	DE,MAIN		;RUECKSPRUNG
F6D5 D5		00990		PUSH 	DE
F6D6 E5		00991		PUSH 	HL		;SPRUNG ADR.
F6D7 189A	00992		JR 	UPOP-#
F6D9 FE50	00993 	GO1:	CMP 	'P'
F6DB 2011	00994		JRNZ 	GO3-#
F6DD 13		00995		INC 	DE
F6DE 1A		00996		LD	A,(DE)
F6DF FE43	00997		CMP 	'C'
F6E1 C259F0	00898		JPNZ 	ERROR
F6E4 2AADFF	00999		LD	HL,(UPC)
F6E7 ED7BABFF 	01000		LD	SP,(USP)
F6EB E5		01001		PUSH 	HL
F6EC 1885	01002		JR	UPOP-#
F6EE 2ACEFF	01003 	GO3:	LD	HL,(BRKPT)
F6F1 7E		01004		LD	A,(HL)
F6F2 FEFF	01005		CMP 	0FFH
F6F4 C259F0	01006		JPNZ 	ERROR
F6F7 3AD0FF	01007		LD	A,(BRKPT+2)
F6FA 77		01008		LD	(HL),A
F6FB C9		01009		RET

		01010
		01011
F6FC CD55F6	01012 	BRK:	CALL 	UPUSH
F6FF E1		01013		POP 	HL
F700 2B		01014		DEC 	HL		;ALTER PC
F701 ED73ABFF 	01015		LD	(USP),SP
F705 22ADFF	01016		LD	(UPC),HL
F708 31FEFE	01017		LD	SP,STACK
F70B 3AD0FF	01018		LD	A,(BRKPT+2)	;BYTE WIEDER EINTRAGEN
F70E 77		01019		LD	(HL),A
F70F 2100F0	01020		LD	HL,START	;BREAKPOINT LOESCHEN
F712 22CEFF	01021		LD	(BRKPT),HL
F715 216CF0	01022		LD	HL,MAIN
F718 E5		01023		PUSH 	HL
		01024
F719 CD74F1	01025 	REGDP: 	CALL PRINT
F71C		01026		DB	' AF   BC   DE   HL   AF'
F733 27		01027		DB	27H
F734		01028		DB	'  BC'
F738 27		01029		DB	27H
F739		01030		DB	'  DE'
F73D 27		01031		DB	27H
F73E		01032		DB	'  HL'
F742 27		01033		DB	27H
F743		01034		DB	'  IX   IY  I    SP    PC'
F75B 1E		01035		DB	NL
F75C 00		01036		DB	0
F75D 060A	01037		LD	B,10
F75F DD2195FF 	01038		LD	IX,UREG
F763 DD6E00	01039 	REGD1: 	LD	L,(IX)

F766 DD6601	01040		LD	H,(IX+1)
F769 CD4AF1	01041		CALL 	OUTHL
F76C 3E20	01042		LD	A,' '
F76E CDC2FF	01043		CALL 	CO
F771 DD23	01044		INC 	IX
F773 DD23	01045		INC 	IX
F775 10EC	01046		DJNZ 	REGD1-#
F777 3AA9FF	01047		LD	A,(HIF)
F77A CD31F1	01048		CALL 	OUTH
F77D CD74F1	01049		CALL 	PRINT
F780		01050		DB	'  '
F782 00		01051		DB	0
F783 2AABFF	01052		LD	HL,(USP)
F786 CD4AF1	01053		CALL 	OUTHL
F789 CD74F1	01054		CALL 	PRINT
F78C		01055		DB	'  '
F78E 00		01056		DB	0
F78F 2AADFF	01057		LD	HL,(UPC)
F792 CD4AF1	01058		CALL 	OUTHL
F795 C9		01059		RET
F796 C319F7	01060 	REGD: 	JMP 	REGDP
		01061
F799 EDFF	01062		DA 	HEAD
F79B		01063		DB	'REG'
F79E 00		01064		NOP
F79F CD55F1	01065 	REG1: 	CALL 	FNEXT
F7A2 38F2	01066		JRC 	REGD-#		;WEIL CR
F7A4 2109F8	01067		LD	HL,RTAB
F7A7 010800	01068		LD	BC,8
F7AA EDB1	01069		CPIR			;AFBCDEHL SUCHEN

F7AC 201A	01070		JRNZ 	REG4-#		;DOPPELREG.
F7AE 018B07	01071		LD	BC,UREG-RTAB-1
F7B1 09		01072		ADD 	HL,BC		;ADRESSE DES REG.
F7B2 13		01073		INC 	DE
F7B3 1A		01074		LD	A,(DE)
F7B4 FE27	01075		CMP 	27H		;STRICHREGISTER
F7B6 2005	01076		JRNZ 	REG2-#		;NEIN
F7B8 13		01077		INC 	DE
F7B9 3E08	01078		LD	A,8		;WEIL STRICHREGISTER
F7BB 85		01079		ADD 	L		;ADR KORRIGIEREN
F7BC 6F		01080		LD	L,A
F7BD E5		01081 	REG2: 	PUSH 	HL
F7BE CD00F1	01082 	REG3: 	CALL 	ASHEX		;BYTE HOLEN
F7C1 7D		01083		LD	A,L
F7C2 E1		01084		POP 	HL
F7C3 38D1	01085		JRC 	REGD-#		;KEIN HEX
F7C5 77		01086		LD	(HL),A		;EINTRAGEN
F7C6 18D7	01087		JR	REG1-#
F7C8 FE49	01088 	REG4: 	CMP	'I'		;DOPPELREGISTER
F7CA 2014	01089		JRNZ 	REG5-#
F7CC 13		01090		INC 	DE
F7CD 1A		01091		LD	A,(DE)
F7CE FE58	01092		CMP 	'X'
F7D0 21A5FF	01093		LD	HL,HIX		;IX REGISTER
F7D3 2825	01094		JRZ 	REG7-#
F7D5 FE59	01095		CMP 	'Y'
F7D7 23		01096		INC 	HL
F7D8 23		01097		INC 	HL
F7D9 281F	01098		JRZ 	REG7-#		;IY REGITER
F7DB 21A9FF	01099		LD	HL,HIF		;INTERRUPTREGISTER

F7DE 18DD	01100		JR	REG2-#
F7E0 FE50	01101 	REG5: 	CMP 	'P'
F7E2 200B	01102		JRNZ 	REG6-#
F7E4 13		01103		INC 	DE
F7E5 1A		01104		LD	A,(DE)
F7E6 FE43	01105		CMP 	'C'
F7E8 20AC	01106		JRNZ 	REGD-#		;FALSCHE EINGABE
F7EA 21ADFF	01107		LD	HL,UPC		;PC
F7ED 180B	01108		JR	REG7-#
F7EF FE53	01109	REG6:	CMP 	'S'
F7F1 13		01110		INC 	DE
F7F2 1A		01111		LD	A,(DE)
F7F3 FE50	01112		CMP 	'P'
F7F5 209F	01113		JRNZ 	REGD-#		;FALSCHE EINGABE
F7F7 21ABFF	01114		LD	HL,USP		;STACKPOINTER
F7FA E5		01115 	REG7: 	PUSH 	HL
F7FB 13		01116		INC 	DE
F7FC CD00F1	01117		CALL 	ASHEX		;WORT HOLEN
F7FF 44		01118		LD	B,H
F800 4D		01119		LD	C,L
F801 E1		01120		POP 	HL
F802 3892	01121		JRC 	REGD-#		;FALLS KEINE HEX-EINGABE
F804 71		01122		LD	(HL),C		;EINTRAGEN
F805 23		01123		INC 	HL
F806 70		01124		LD	(HL),B
F807 1896	01125		JR	REG1-#
		01126
F809		01127 	RTAB: 	DB	'FACBEDLH'
		01128
		01129

		01130 	;******************************
		01131 	;* HELP                       *
		01132 	;******************************
		01133
F811 EDFF	01134		DA	HEAD
F813		01135		DB	'HELP'
F817 00		01136		NOP
F818 210000	01137		LD	HL,0
F81B 010000	01138		LD	BC,0
F81E 3E1E	01139		LD	A,NL
F820 CDC2FF	01140		CALL 	CO
F823 CD74F1	O1141 	HELP1: 	CALL 	PRINT
F826		01142		DB	'   '
F829 00		01143		DB	0
F82A 3EED	01144 	HELP2: 	LD	A,L(HEAD)
F82C EDB1	01145		CPIR			;SUCHE NACH ED
F82E C0		01146		RNZ
F82F 3EFF	01147		LD	A,H(HEAD)
F831 BE		01148		CMP 	(HL)		;FOLGT FF?
F832 20F6	01149		JRNZ 	HELP2-#		;NEIN
F834 E5		01150		PUSH 	HL
F835 C5		01151		PUSH 	BC
F836 0610	01152		LD	B,16		;TEST,OB NACH SPAETESTENS
F838 7E		01153 	HELP3: 	LD	A,(HL)		;16 ZEICHEN EIN NOP FOLGT
F839 23		01154		INC 	HL
F83A B7		01155		OR	A
F83B 2806	01156		JRZ 	HELP4-#		;JA,AUSGABE
F83D 10F9	01157		DJNZ 	HELP3-#
F83F C1		01158		POP 	BC
F840 E1		01159		POP 	HL

F841 18E7	01160		JR	HELP2-#
F843 C1		01161 	HELP4: 	POP 	BC		;AUSGABE
F844 E1		01162		POP 	HL
F845 23		01163 	HELP5: 	INC 	HL
F846 0B		01164		DEC 	BC
F847 7E		01165		LD	A,(HL)
F848 B7		01166		OR	A		;TEST ENDE
F849 28D8	01167		JRZ 	HELP1-#
F84B CDC2FF	01168		CALL 	CO
F84E 18F5	01169		JR	HELP5-#
		01170
		01171
		01172
		01173 	;******************************
		01174 	;* READMC                     *
		01175 	;******************************
		01176
F850 EDFF	01177		DA	HEAD
F852		01178		DB	'READ'
F856 00		01179		NOP
F857 CD7BFA	01180		CALL 	RINIT
F85A CDD2F0	01181		CALL 	GFITY
F85D CD00F1	01182		CALL 	ASHEX
F860 110000	01183		LD	DE,0
F863 3801	01184		JRC 	READ1-#
F865 EB		01185		EX	DE,HL
F866 CDC5FF	01186 	READ1: 	CALL 	RI		;DOPPELPUNKT SUCHEN
F869 FE3A	01187		CMP 	3AH
F86B 20F9	01188		JRNZ 	READ1-#
F86D 0E00	01189		LD	C,0		;PRUEFSUMME =0 SETZEN

F86F CDCEF8	01190		CALL 	READ3		;BLOCKLAENGE
		01191
F872 B7		01192		OR	A		;ENDE?
F873 C8		01193		RZ			;FERTIG
F874 47		01194		LD	B,A
F875 CDCEF8	01195		CALL 	READ3		;HI DER ADR.
F878 67		01196		LD	H,A
F879 CDCEF8	01197		CALL 	READ3		;LO
F87C 6F		01198		LD	L,A
F87D 3A08FF	01199		LD	A,(FITY)
F880 FE41	01200		CMP 	'A'
F882 2017	01201		JRNZ 	REAl2-#
F884 C5		01202		PUSH 	BC
F885 D5		01203		PUSH 	DE
F886 E5		01204		PUSH 	HL
F887 CD4AF1	01205		CALL 	OUTHL
F88A 3E20	01206		LD	A,' '
F88C 3208FF	01207		LD	(FITY),A
F88F CDF5F0	01208		CALL 	INHEX
F892 D1		01209		POP 	DE
F893 3803	01210		JRC 	REA11-#
F895 ED52	01211		SBC 	HL,DE
F897 E3		01212		EX	(SP),HL
F898 E1		01213 	REA11: 	POP 	HL
F899 EB		01214		EX	DE,HL
F89A C1		01215		POP 	BC
F89B 19		01216 	REAl2: 	ADD 	HL,DE		;ADR+OFFSET
F89C CDCEF8	01217		CALL 	READ3
F89F CDCEF8	01218 	READ2: 	CALL 	READ3		;DATEN
F8A2 77		01219		LD	(HL),A

F8A3 23		01220		INC 	HL
F8A4 10F9	01221		DJNZ 	READ2-#
F8A6 CDCEF8	01222		CALL 	READ3		;PRUEFSUMMFE
F8A9 28BB	01223		JRZ 	READ1-#		;OK
F8AB CD74F1	01224		CALL 	PRINT
F8AE		01225		DB	'CHECKSUM ERROR '
F8BD 00		01226		DB	0
F8BE CD4AF1	01227		CALL 	OUTHL
F8C1 CDCBFF	01228		CALL 	CI		;HALT BIS TASTE GEDRUECKT
F8C4 FE51	01229		CMP 	'Q'		;QUIT?
F8C6 C8		01230		RZ			;JA
F8C7 3E1E	01231		LD	A,NL
F8C9 CDC2FF	01232		CALL 	CO
F8CC 1898	01233		JR	READ1-#
F8CE D5		01234 	READ3: 	PUSH 	DE		;BYTE VOM LESER
F8CF CDC5FF	01235		CALL 	RI
F8D2 CD20F1	01236		CALL 	CNVBN
F8D5 07		01237		RLCA
F8D6 07		01238		RLCA
F8D7 07		01239		RLCA
F8D8 07		01240		RLCA
F8D9 57		01241		LD	D,A
F8DA CDC5FF	01242		CALL 	RI
F8DD CD20F1	01243		CALL 	CNVBN
F8E0 B2		01244		OR	D		;BYTE ZUSAMMENFUEGEN
F8E1 57		01245		LD	D,A		;RETTEN
F8E2 81		01246		ADD 	C		;PRUEFSUMME
F8E3 4F		01247		LD	C,A		;NACH C ZURUECK
F8E4 7A		01248		LD A,D
F8E5 D1		01249		POP DE

F8E6 C9		01250		RET
		01251
		01252 	;******************************
		01253 	;* CHECKSUM                   *
		01254 	;******************************
		01255
F8E7 EDFF	01256		DA	HEAD
F8E9		01257		DB	'CHECKSUM'
F8F1 00		01258		NOP
F8F2 CD00F1	01259		CALL 	ASHEX
F8F5 DA59F0	01260		JPC 	ERROR
F8F8 E5		01261		PUSH 	HL
F8F9 CD00F1	01262		CALL 	ASHEX
F8FC EB		01263		EX	DE,HL
F8FD 13		01264		INC 	DE		;ENDADRESSE+1
F8FE E1		01265		POP 	HL		;STARTADR.
F8FF DA59F0	01266		JPC 	ERROR
F902 DD210000 	01267 	CHECK: 	LD	IX,0		;IX DIENT ALS AKKU
F906 0600	01268		LD	B,0
F908 4E		01269 	CHCK1: 	LD	C,(HL)
F909 DD09	01270		ADD 	IX,BC		;SUMMIEREN
F90B 23		01271		INC 	HL
F90C E5		01272		PUSH 	HL
F90D AF		01273		XOR 	A		;CY=0
F90E ED52	01274		SBC 	HL,DE		;ENDADRESSE ERRREICHT?
F910 E1		01275		POP 	HL
F911 38F5	01276		JRC 	CHCK1-#		;NEIN,WEITER
F913 DDE5	01277		PUSH 	IX		;FRGEBNIS
F915 E1		01278		POP 	HL		;NACH HL FUER AUSGABE
F916 C34AF1	01279		JMP 	OUTHL		;AUSGABE UND RETURN

		01280
		01281 	;******************************
		01282 	;* CALCULATE                  *
		01283 	;******************************
		01284
F919 EDFF	01285		DA 	HEAD
F91B		01286		DB	'='
F91C 00		01287		NOP
F91D CD00F1	01288		CALL 	ASHEX
F920 E5		01289		PUSH 	HL
F921 E5		01290		PUSH 	HL
F922 E5		01291		PUSH 	HL
F923 CD00F1	01292		CALL 	ASHEX
F926 EB		01293		EX	DE,HL
F927 E1		01294		POP 	HL		;SUMMETAUSRECHNEN
F928 19		01295		ADD 	HL,DE		;
F929 CD74F1	01296		CALL 	PRINT		;UND AUSGEBEN
F92C		01297		DB	'SUM:'
F930 00		01298		DB	0
F931 CD4AF1	01299		CALL 	OUTHL
F934 E1		01300		POP 	HL		;DIFFERENZ AUSRECHNEN
F935 B7		01301		OR	A		;CY=O
F936 ED52	01302		SBC 	HL,DE
F938 CD74F1	01303		CALL 	PRINT		;UND AUSGEBEN
F93B		01304		DB	'  DIF:'
F941 00		01305		DB	0
F942 CD4AF1	01306		CALL 	OUTHL
F945 E1		01307		POP 	HL
F946 EB		01308		EX	DE,HL
F947 87		01309		OR	A

F948 2252	01310		SBC 	HL,DE
F94A 2B		01311		DEC 	HL
F94B 2B		01312		DEC 	HL
F94C CD74F1	01313		CALL 	PRINT
F94F		01314		DB	'  REL:'
F955 00		01315		DB	0
F956 29		01316		ADD 	HL,HL		;TEST BEREICHS UEBERSCHREITUNG
F957 7C		01317		LD	A,H		;BEI RELATIVEN SPRUENGEN
F958 CE00	01318		ADC 	0
F95A 2005	01319		JRNZ 	CALC1-#		;ZU WEIT
F95C 7D		01320		LD	A,L
F95D 1F		01321		RRA			;/2
F95E C331F1	01322		JMP 	OUTH		;AKKU AUSGEBEN UND RETURN
F961 CD74F1	01323 	CALC1: 	CALL 	PRINT		;WENN ZU WEIT
F964		01324		DB	'**'
F966 00		01325		DB	0
F967 C9		01326		RET
		01327
		01328 	;******************************
		01329 	;* FIND                       *
		01330 	;******************************
		01331
F968 EDFF	01332		DA	HEAD
F96A		01333		DB	'FIND'
F96E 00		01334		NOP
F96F CDD2F0	01335 	FIND: 	CALL 	GFITY
F972 CD00F1	01336		CALL 	ASHEX
F975 E5		01337		PUSH 	HL
F976 CD00F1	01338		CALL 	ASHEX
F979 CD55F1	01339		CALL 	FNEXT

F97C ED5340FF 	01340		LD	(TXTPT),DE	;BEGINN DER ZU SUCH. BYTES
F980 E5		01341		PUSH 	HL		;ENDADRESSE RETTEN
F981 3A08FF	01342		LD	A,(FITY)	;OPTION TESTEN UND BEFEHLSFOLGE ERZEUGEN
F984 21BFF9	01343		LD	HL,FINCH	;ZEICHENKETTE
F987 1110FF	01344		LD	DE,DATA
F98A 010C00	01345		LD	BC,12
F98D FE41	01346		CMP 	'A'
F98F 2803	01347		JRZ 	FIND1-#
F991 21C9F9	01348		LD	HL,FINHX	;HEX
F994 EDB0	01349 	FIND1: 	LDIR			;BEFEHLSFOLGE INS RAM LADEN
F996 C1		01350		POP 	BC		;ENDADRESSE
F997 03		01351		INC 	BC
F998 E1		01352		POP 	HL		;STARUTADRESSE
F999 ED5B40FF 	01353 	FIND2: 	LD	DE,(TXTPT)
F99D E5		01354		PUSH 	HL
F99E C310FF	01355 	FIND3: 	JMP 	DATA		;VARIABLES PGM AUSFUEHREN
F9A1 BE		01356 	FIND4: 	CMP 	(HL)
F9A2 23		01357		INC 	HL
F9A3 28F9	01358		JRZ 	FIND3-#		;GLEICH,WEITER
F9A5 79		01359 	FIND7: 	LD	A,C		;TEST OB ENDE
F9A6 95		01360		SUB 	L
F9A7 78		01361		LD	A,B
F9A8 9C		01362		SBC 	H
F9A9 E1		01363		POP 	HL
F9AA 3010	01364		JRNC 	FIND6-#
F9AC C9		01365		RET
F9AD 1A		01366 	FIND8: 	LD	A,(DE)
F9AE FE0D	01367		CMP 	CR
F9B0 20F3	01368		JRNZ 	FIND7-#
F9B2 E1		01369 	FIND5: 	POP 	HL

F9B3 CD4AF1	01370		CALL 	OUTHL		;ADRESSE AUSGEBEN
F9B6 CD74F1	01371		CALL 	PRINT
F9B9		01372		DB	'  '
F9BB 00		01373		DB	0
F9BC 23		01374 	FIND6: 	INC 	HL
F9BD 18DA	01375		JR	FIND2-#		;WEITERSUCHEN
		01376
F9BF 1A		01377 	FINCH: 	LD	A,(DE)		;STRING SUCHEN
F9C0 13		01378		INC 	DE
F9C1 FE0D	01379		CMP 	CR
F9C3 C2A1F9	01380		JPNZ 	FIND4		;VERGLEICHEN
F9C6 C3B2F9	01381		JMP 	FIND5		;GEFUNDEN
F9C9 E5		01382 	FINHX: 	PUSH 	HL		;HEX SUCHEN
F9CA CD00F1	01383		CALL 	ASHEX
F9CD 7D		01384		LD	A,L
F9CE E1		01385		POP 	HL
F9CF D2A1F9	01386		JPNC	FIND4		;VERGLEICHEN
F9D2 C3ADF9	01387		JMP 	FIND8		;GEFUNDEN ??
		01388
		01389 	;******************************
		01390	;* EOF                        *
		01391	;******************************
		01392
F9D5 EDFF	01393		DA 	HEAD
F9D7		01394		DB	'EOF'
F9DA 00		01395		NOP
F9DB 3AB3FF	01396 	EOFI: 	LD	A,(EOFCH)
F9DE CD31F1	01397		CALL 	OUTH
F9E1 CDF8F0	01398		CALL 	INHEX
F9E4 D8		01399		RC

F9E5 7D		01400		LD	A,L
F9E6 32B3FF	01401		LD	(EOFCH),A
F9E9 C9		01402		RET
		01403
		01404 	;******************************
		01405 	;* POWER OFF                  *
		01406 	;******************************
		01407
F9EA EDFF	01408		DA 	HEAD
F9EC		01409		DB	'OFF'
F9EF 00		01410		NOP
F9F0 D300	01411 	OFF:	OUT 	0
F9F2 D300	01412		OUT 	0
F9F4 C9		01413		RET
		01414
		01415 	;******************************
		01416 	;* ASNRI	              *
		01417 	;******************************
		01418
		01419
F9F5 EDFF	01420		DA 	HEAD
F9F7		01421		DB	'ASNRI=RI'
F9FF 00		01422		NOP
FA00 218CFA	01423 	RIRI: 	LD	HL,RI1
FA03 180F	01424		JR	ASNRI-#
		01425
FA05 EDFF	01426		DA 	HEAD
FA07		01427		DB	'ASNRI=CRI'
FA10 00		01428		NOP
FA11 21A3FA	01429 	RICRI: 	LD	HL,CRI1

FA14 22C6FF	01430 	ASNRI: 	LD	(RI+1),HL
FA17 C9		01431		RET
		01432
FA18 EDFF	01433		DA 	HEAD
FA1A		01434		DB	'ASNRI=USR'
FA23 00		01435		NOP
FA24 CD00F1	01436		CALL 	ASHEX
FA27 D8		01437		RC
FA28 18EA	01438		JR	ASNRI-#
		01439
FA2A 3AB2FF	01440 	MEMSI: 	LD	A,(MSIZE+1)	;WIRD VON EXTERNEN PGM GENUTZT
FA2D 47		01441		LD	B,A
FA2E 3AB1FF	01442		LD	A,(MSIZE)
FA31 C9		01443		RET
		01444
		01445 	;EINFACHER RAMTEST
FA32 21FFFF	01446 	MEMCH: 	LD	HL,-1		;START BEI 0
FA35 1100E8	01447		LD	DE,SYSBG	;BIS SYSTEMBEGINN
FA38 23		01448 	MCH:	INC 	HL
FA39 7E		01449		LD	A,(HL)
FA3A EEFF	01450		XOR 	0FFH		;KOMPLEMENTIEREN
FA3C 77		01451		LD	(HL),A
FA3D BE		01452		CMP 	(HL)
FA3E 200C	01453		JRNZ 	MCH1-#
FA40 EEFF	01454		XOR 	0FFH
FA42 77		01455		LD	(HL),A
FA43 BE		01456		CMP 	(HL)		;WIEDER GLEICH?
FA44 2006	01457		JRNZ 	MCH1-#		;NEIN
FA46 E5		01458		PUSH 	HL
FA47 ED52	01459		SBC 	HL,DE		;ENDE?

FA49 E1		01460		POP 	HL
FA4A 20EC	01461		JRNZ 	MCH-#		;NEIN,WEITER
FA4C 2B		01462 	MCH1: 	DEC 	HL
FA4D C9		01463		RET
		01464
		01465 	;ROUTINE FUER EXTERNE MONITORBENUTZUNG
FA4E E5		01466 	EXT:	PUSH 	HL
FA4F C5		01467		PUSH 	BC
FA50 F5		01468		PUSH 	AF
FA51 21A9FB	01469		LD	HL,ETAB
FA54 0600	01470		LD	B,0
FA56 CB21	01471		SLA 	C		;C=C*2
FA58 09		01472		ADD 	HL,BC
FA59 7E		01473		LD	A,(HL)
FA5A 23		01474		INC 	HL
FA5B 66		01475		LD	H,(HL)
FA5C 6F		01476		LD	L,A		;HL=ZIELADRESSE
FA5D F1		01477		POP 	AF
FA5E C1		01478		POP 	BC
FA5F E3		01479		EX	(SP),HL		;ZIEL==>STACK,HL ZURUECK
FA60 C9		01480		RET			;JMP
		01481
		01482
		01483 	;******************************
		01484 	;* GERAETEROUTINEN            *
		01485 	;******************************
		01486
		01487
		01488 	;KASSETTE INITIALISIEREN
FA61 0E19	01489 	CINIT: LD	C,CSIOA

FA63 0608	01490		LD	B,8
FA65 2173FA	01491		LD	HL,CTAB
FA68 EDB3	01492		OTIR
FA6A 3E05	01493		LD	A,5
FA6C D316	01494		OUT 	CTC2
FA6E 3E04	01495		LD	A,4
FA70 D316	01496		OUT 	CTC2
FA72 C9		01497		RET
		01498
FA73 04		01499 	CTAB: 	DB	4
FA74 04		01500		DB	4
FA75 01		01501		DB	1
FA76 40		01502		DB	40H
FA77 03		01503		DB	3
FA78 C1		01504		DB	0C1H
FA79 05		01505		DB	5
FA7A EA		01506		DB 	0EAH
		01507
		01508 	;LOCHBANDLESEN INITIALISIEREN
FA7B 3E4F	01509 	RINIT: 	LD	A,04FH
FA7D D30D	01510		OUT 	CP1A
FA7F 3ECF	01511		LD	A,0CFH
FA81 D30F	01512		OUT 	CP1B
FA83 3E01	01513		LD	A,1
FA85 D30F	01514		OUT 	CP1B
FA87 3E10	01515		LD	A,10H
FA89 D30F	01516		OUT 	CP1B
FA8B C9		01517		RET
		01518
		01519 	;ZEICHEN VON LOCHBAND HOLEN

FA8C 3E10	01520 	RI1:	LD	A,10H
FA8E D30E	01521		OUT 	DP1B		;STARTINPULS
FA90 AF		01522		XOR 	A
FA91 D30E	01523		OUT 	DP1B
FA93 CDB8FA	01524 	RI12: 	CALL 	SEOF
FA96 DB0E	01525		IN	DP1B
FA98 E601	01526		AND 	1
FA9A 20F7	01527		JRNZ 	RI12-#
FA9C DB0C	01528		IN	DP1A
FA9E E67F	01529		AND 	7FH
FAA0 28EA	01530		JRZ 	RI1-#
FAA2 C9		01531		RET
		01532
		01533 	;ZEICHEN VON KASSETTE HGL::N
FAA3 CDB8FA	01534 	CRI1: 	CALL 	SEOF
FAA6 DB19	01535		IN	CSIOA
FAA8 E601	01536		AND 	1
FAAA 28F7	04537		JRZ 	CRI1-#
FAAC DB18	01538		IN	DSIOA
FAAE C9		01539		RET
		01540 	;ZEICHEN AUF KASSETTE AUFZEICHNEN
FAAF D318	01541 	CPO1: 	OUT 	DSIOA
FAB1 DB19	01542 	CPO11: 	IN	CSIOA
FAB3 E604	01543		AND 	4
FAB5 28FA	01544		JRZ 	CPO11-#
FAB7 C9		01545		RET
		01546
FAB8 DB08	01547 	SEOF: 	IN	KEYBD		;LESEN UNTERBRECHEN?
FABA FE03	01548		CMP 	EOF
FABC C0		01549		RNZ

FABD F1		01550		POP 	AF		;STACK KORRIGIEREN
FABE 3AB3FF	01551		LD	A,(EOFCH)
FAC1 C9		01552		RET
		01553
		01554 	;CONSOLSTATUSABFRAGE
FAC2 DB09	01555 	CSTS: 	IN	KEYBC
FAC4 B7		01556		OR	A
FAC5 C8		01557		RZ			;KEINE TASTE
FAC6 DB08	01558		IN 	KEYBD
FAC8 FE0D	01559		CMP 	CR
FACA 28F6	01560		JRZ 	CSTS-#
FACC 32B4FF	01561		LD	(CSTSR),A
FACF F6FF	01562		OR	0FFH
FAD1 C9		01563		RET
		01564
		01565 	;TASTATUREINGABE
FAD2 3AB4FF	01566 	CI1:	LD	A,(CSTSR)
FAD5 B7		01567		OR	A
FAD6 2807	01568		JRZ 	CI11-#
FAD8 AF		01569		XOR 	A
FAD9 32B4FF	01570		LD	(CSTSR),A
FADC DB08	01571		IN	KEYBD
FADE C9		01572		RET
FADF DB09	01573 	CI11: 	IN	KEYBC		;AUF STEIGENDE FLANKE WARTEN
FAE1 B7		01574		OR	A
FAE2 20FB	01575		JRNZ 	CI11-#
FAE4 DB09	01576 	CI12: 	IN	KEYBC
FAE6 B7		01577		OR	A
FAE7 28FB	01578		JRZ 	CI12-#
FAE9 DB08	01579		IN	KEYBD

FAEB C9		01580		RET
		01581
		01582 	;BILDSCHIRMAUSGABE
FAEC E5		01583 	CO1:	PUSH 	HL
FAED D5		01584		PUSH 	DE
FAEE C5		01585		PUSH 	BC
FAEF F5		01586		PUSH 	AF
FAF0 2A93FF	01587		LD	HL,(CURS)	;HL=CURSOR
FAF3 47		01588		LD	B,A
FAF4 3E80	01589		LD	A,80H		;CUSOR AUS
FAF6 AE		01590		XOR 	(HL)
FAF7 77		01591		LD	(HL),A
FAF8 78		01592		LD	A,B
FAF9 FE1F	01593		CMP 	NL+1		;STEUERZEICHEN?
FAFB 302B	01594		JRNC 	CRT5-#		;NEIN
FAFD FE1E	01595		CMP 	NL		;NEUE ZEILE?
FAFF 114000	01596		LD	DE,CHPL		;ZEICHEN/ZEILE
FB02 2007	01597		JRNZ 	CRT2-#		;NEIN,NICHT NL
FB04 7D		01598		LD	A,L		;ZUM ZEILENANFANG ZURUECK
FB05 E6C0	01599		AND 	-CHPL
FB07 6F		01600		LD	L,A
FB08 19		01601 	CRT1: 	ADD 	HL,DE		;LINEFEED
FB09 181F	01602		JR	CRT7-#
FB0B FE0D	01603 	CRT2: 	CMP 	CR
FB0D 2006	01604		JRNZ 	CRT3-#
FB0F 7D		01605		LD	A,L		;ZUM ZEILENANF. ZURUECK
FB10 E6C0	01606		AND 	-CHPL
FB12 6F		01607		LD	L,A
FB13 1838	01608		JR	CRT9-#
FB15 FE0A	01609 	CRT3: 	CMP 	LF

FB17 28EF	01610		JRZ 	CRT1-#		;LINEFEED AUSFUEHREN
FB19 FE08	01611		CMP 	CURL
FB1B 380B	01612		JRC 	CRT5-#
FB1D 203A	01613		JRNZ 	CRT10-#
FB1F 2B		01614		DEC 	HL		;CURSOR LINKS
FB20 7C		01615 	CRT4: 	LD	A,H		;TEST OB NOCH IM BILDSCHIRM
FB21 FEE8	01616		CMP 	H(CRTBG)
FB23 DA84FB	01617		JPC 	CRT15
FB26 1825	01618		JR	CRT9-#
FB28 77		01619 	CRT5: 	LD	(HL),A		;ZEICHEN NACH CRT
FB29 23		01620 	CRT6: 	INC 	HL		;CURSOR RECHTS
FB2A 7C		01621 	CRT7: 	LD	A,H		;ROLLEN NOTWENDIG?
FB2B FEEE	01622		CMP 	H(CRTEN)
FB2D 381E	01623		JRC 	CRT9-#		;NEIN
FB2F 1100E8	01624		LD	DE,CRTBG
FB32 E5		01625		PUSH 	HL
FB33 2140E8	01626		LD 	HL,CRTBG+CHPL
FB36 010006	01627		LD	BC,CRTEN-CRTBG
FB39 EDB0	01628		LDIR			;ROLLEN
FB3B 21C0ED	01629		LD	HL,CRTEN-CHPL
FB3E 0640	01630		LD	B,CHPL
FB40 3E20	01631		LD	A,' '
FB42 77		01632 	CRT8: 	LD	(HL),A		;LETZTE ZEILE LOESCHEN
FB43 23		01633		INC 	HL
FB44 10FC	01634		DJNZ 	CRT8-#
FB46 E1		01635		POP 	HL
FB47 114000	01636		LD	DE,CHPL		;CURSOR KORRIGIEREN
FB4A B7		01637		OR	A
FB4B ED52	01638		SBC HL,DE
FB4D 3E80	01639 	CRT9: 	LD	A,80H		;CURSOR AN

FB4F AE		01640		XOR 	(HL)
FB50 77		01641		LD	(HL),A
FB51 2293FF	01642		LD	(GURS),HL
FB54 F1		01643		POP 	AF
FB55 C1		01644		POP 	BC
FB56 D1		01645		POP 	DE
FB57 E1		01646		POP 	HL
FB58 C9		01647		RET
FB59 FE09	01648 	CRTIO: 	CMP 	CURR
FB5B 28CC	01649		JRZ 	CRT6-#
FB5D FE0B	01650		CMP 	CURU
FB5F 2005	01651		JRNZ 	CRT11-#
FB61 B7		01652		OR	A		;CURSOR HOCH
FB62 ED52	01653		SBC 	HL,DE
FB64 18BA	01654		JR	CRT4-#
FB66 FE1B	01655 	CRT11: 	CMP 	ESC
FB68 2005	01656		JRNZ 	CRT12-#
FB6A 7E		01657		LD	A,(HL)		;INVERTIEREN
FB6B EE80	01658		XOR 	80H
FB6D 18B9	01659		JR	CRT5-#
FB6F FE0C	01660 	CRT12: 	CMP 	CLS
FB71 200D	01661		JRNZ 	CRT14-#
FB73 2100E8	01662 	CRT19: 	LD	HL,CRTBG
FB76 3620	01663 	CRT13: 	LD	(HL),' '	;LOESCHEN
FB78 23		01664		INC 	HL
FB79 7C		01665		LD	A,H
FB7A FEEE	01666		CMP 	H(CRTEN)
FB7C 20F8	01667		JRNZ 	CRT13-#		;ANSCHLIESSEND HOME
FB7E 3E0E	01668		LD 	A,HOME
FB80 FE0E	01669 	CRT14: 	CMP 	HOME

FB82 20A4	01670		JRNZ 	CRT5-#
FB84 2100E8	01671 	CRT15: 	LD	HL,CRTBG
FB87 18C4	01672		JR	CRT9-#
		01673
		01674 	;TABELLE FUER GERAETEZUWWEISUNG
FB89 FFEF	01675 	ATAB: 	DA	START-1		;MSIZE
FB8B 04		01676		DB	EOT		;EOFCH
FB8C 00		01677		DB	0		;CSTSR
FB8D 79		01678		LD	A,C
FB8E C3ECFA	01679		JMP 	CO1		;LO
FB91 79		01680		LD	A,C
FB92 C3AFFA	01681		JMP 	CPO1		;PO
FB95 79		01682		LD	A,C
FB96 C3AFFA	01683		JMP 	CPO1		;CPO
FB99 79		01684		LD	A,C
FB9A C3ECFA	01685		JMP 	CO1		;CO
FB9D C38CFA	01686		JMP 	RI1
FBA0 C3A3FA	01687		JMP 	CRI1
FBA3 C3D2FA	01688		JMP 	CI1
FBA6 00F0	01689		DA	START
FBA8 C3		01690		DB	0C3H
		01691
FBA9 F8F0	01692 	ETAB: 	DA	INHEX		;0
FBAB 00F1	01693		DA	ASHEX		;1
FBAD 20F1	01694		DA	CNVBN		;2
FBAF 31F1	01695		DA	OUTH		;3
FBB1 4AF1	01696		DA	OUTHL		;4
FBB3 74F1	01697		DA	PRINT		;5
FBB5 81F1	01698		DA	INL		;6
FBB7 87F1	01699		DA	INL00		;7

FBB9 CFF1	01700		DA	MEMO1		;8
FBBB 40F3	01701		DA 	MOVE		;9
FBBD 63F8	01702		DA	READ1-3		;10 =0AH
FBBF 6EF3	01703		DA	LDEXT		;11 =0BH
FBC1 DAF4	01704		DA	SAEXT		;12 =0CH
FBC3 F0F9	01705		DA	OFF		;13 =0DH
FBC5 00FA	01706		DA	RIRI		;14 =0EH
FBC7 11FA	01707		DA	RICRI		;15 =0FH
FBC9 61FA	01708		DA	CINIT		;16 =10H
FBCB 7BFA	01709		DA	RINIT		;17 =11H
FBCD DDF5	01710		DA	FILL1		;18 =12H
FBCF 25F6	01711		DA	NMIV		;19 =13H
FBD1 55F6	01712		DA	UPUSH		;20 =14H
FBD3 73F6	01713		DA	UPOP		;21 =15H
FBD5 19F7	01714		DA	REGDP		;22 =16H
FBD7 9FF7	01715		DA	REG1		;23 =17H
FBD9 02F9	01716		DA	CHECK		;24 =18H
FBDB 6FF9	01717		DA	FIND		;25 =19H
FBDD 32FA	01718		DA	MEMCH		;26 =IAH
		01719
		01720
		01721
		01722		EJEC
		01723 	;******************************
		01724 	;* VEREINBARUNGEN             *
		01725 	;******************************
		01726
		01727 	;PORTS:
		01728 	POWOF: 	EQU 	0		;POWER OFF
		01729 	KEYBD: 	EQU 	8		;TASTATURDATEN

		01730 	KEYBC: 	EQU 	9		;TASTATURSTATUS 0FFH=GEDR./0=KEINE TASTE
		01731 	BEPOF: 	EQU 	8		;SIGNALTON AUS
		01732 	BEPON: 	EQU 	9		;AN
		01733 	DP1A: 	EQU 	0CH		;12  PIO 1
		01734 	CP1A: 	EQU 	0DH		;13
		01735 	DP1B: 	EQU 	0EH		;14
		01736 	CP1B: 	EQU 	0FH		;15
		01737 	DP2A: 	EQU 	10H		;16  STEUERPORT LBL
		01738 	CP2A: 	EQU 	11H		;17  BIT 0 STATUS,BIT 4 STARTIMPULS
		01739 	DP2B: 	EQU 	12H		;18 LBL DATEN
		01740 	CP2B: 	EQU 	13H		;19
		01741 	CTCO: 	EQU 	14H		;20
		01742 	CTC1: 	EQU 	15H		;21
		01743 	CTC2: 	EQU 	16H		;22 KASSETTE
		01744 	CTC3: 	EQU 	17H		;23
		01745 	DSIOA: 	EQU 	18H		;24 KASSETTE
		01746 	CSIOA: 	EQU 	19H		;25
		01747 	DSIOB: 	EQU 	1AH		;26
		01748 	CSIOB: 	EQU 	1BH		;27
		01749	;
		01750 	CURL: 	EQU 	8		;CURSOR LINKS
		01751 	CURR: 	EQU 	9		;RECHTS
		01752 	CURD: 	EQU 	0AH		;10 ;RUNTER
		01753 	CURU: 	EQU 	0BH		;11 ;HOCH
		01754 	HOME: 	EQU 	0EH		;14
		01755 	ESC:	EQU 	1BH		;ESCAPE
		01756 	NL:	EQU 	1EH		;NEW LINE
		01757 	LF:	EQU 	0AH		;LINE FEED
		01758 	CR:	EQU 	0DH		;RETURN
		01759 	CLS:	EQU 	0CH		;BILDSCHIRM LOESCHEN

		01760 	SOH:	EQU 	1		;START KOPF
		01761 	GS:	EQU 	1DH		;GRUPPENTRENPdUNG
		01762 	ETX:	EQU 	03H		;END OF TEXT
		01763 	EOT:	EQU 	04H		;END OF TRANSMISSION
		01764 	STX:	EQU 	02H		;START OF TEXT
		01765 	ERASE: 	EQU 	06H		;EINGABEZEILE LOESCHEN
		01766 	EOF:	EQU 	ETX		;END OF FILE
		01767 	MEMB: 	EQU 	16		;BYTES/ZEILE (MEMORY)
		01768 	MEML: 	EQU 	16		;ANZAHL ZEILEN (MEM)
		01769 	CHPL: 	EQU 	64		;ZEICHEN/ZEILE (CRT)
		01770 	HEAD: 	EQU 	0FFEDH		;SUCHCODE VOR KOMMANDO
		01771
		01772		ORG 	0FF00H
		01773 	;RAM BEREICH
		01774 	STACK: 	EQU 	#-2
		01775 	USTCK: 	EQU 	#-64
FF00		01776 	FINA: 	BER 	8		;FILENAME REGISTER
FF08		01777 	FITY: 	BER 	2		;FILETYP REGISTER
FF0A		01778 	ARG1: 	BER 	2		;HEX EINGABEN
FF0C		01779 	ARG2: 	BER	2
FF0E		01780 	ARG3: 	BER 	2
FF10		01781 	DATA: 	BER 	16		;ZUSATZREGISTER (FILE-INFO
FF20		01782 	INTV: 	BER 	32		;INTERRUPT VEKTOREN
FF40		01783 	TXTPT: 	BER 	2		;POINTER IPd TEXTPUFFER
FF42		01784 	TXTBU: 	BER 	81		;TEXTPUFFER
		01785 	BULEN: 	EQU 	81		;PUFFERLAENGE
FF93		01786 	CURS: 	BER 	2		;CURSORPOSITION
FF95		01787 	HAF:	BER 	2		;CPU-REGISTER
FF97		01788 	HBC:	BER 	2
FF99		01789 	HDE:	BER 	2

FF9B		01790 	HHL:	BER 	2
FF9D		01791 	AAF:	BER 	2
FF9F		01792 	ABC:	BER 	2
FFA1		01793 	ADE:	BER 	2
FFA3		01794 	AHL:	BER 	2
FFA5		01795 	HIX:	BER 	2
FFA7		01796 	HIY:	BER 	2
FFA9		01797 	HIF:	BER 	2
		01798 	UREG: 	EQU 	HAF
FFAB		01799 	USP:	BER 	2
FFAD		01800 	UPC:	BER 	2
FFAF		01801 	SSP:	BER 	2		;ZWISCHENSPEICHER FUER SP
FFB1		01802 	MSIZE: 	BER 	2		;HOECHSTER FREIER SPEICHERPLATZ
FFB3		01803 	EOFCH: 	BER 	1		;EOF ZEICHEN
FFB4		01804 	CSTSR: 	BER 	1		;CONSOLSTATUSZELLE
FFB5		01805 	LOE:	BER 	1		;LD A,C
FFB6		01806 	LO:	BER 	3		;JMP LIST-DEVICE
FFB9		01807 	POE:	BER 	1		;LD A,C
FFBA		01808 	PO:	BER 	3		;JMP PUNCH-DEVICE
FFBD		01809 	CPOE: 	BER 	1		;LD A,C
FFBE		01810 	CPO:	BER 	3		;JMP KASSETTENAUSGABE
FFC1		01811 	COE:	BER 	1		;LD A,C
FFC2		01812 	CO:	BER 	3		;JMP CONSOLAUSGABE
FFC5		01813 	RI:	BER 	3		;JMP LBL
FFC8		01814 	CRI:	BER 	3		;JMP KASSETTENEINGABE
FFCB		01815 	CI:	BER 	3		;JMP CONSOLEINGABE
FFCE		01816 	BRKPT: 	BER 	3		;BREAKPOINTMERKER
		01817
		01818 	CRTBG: 	EQU 	0E800H		;BILDSCHIRMADR.
		01819 	CRTEN: 	EQU 	0EE00H		;ENDE+1

		01820 	MEMMO: 	EQU 	DATA		;DARSTELLMODE BEI MEMORY
		01821 	SYSBG: 	EQU 	CRTBG
		01822
		01823
FFD1		01824		END


NEXT: E

PASS: E
